package com.yhy.wxzn.wcs.service;

import com.yhy.wxzn.wcs.device.rgv.bean.Coord;
import com.yhy.wxzn.wcs.device.rgv.bean.Node;
import com.yhy.wxzn.wcs.entity.DeviceNetworkInfo;
import com.yhy.wxzn.wcs.entity.WcsDeviceInfo;
import com.baomidou.mybatisplus.extension.service.IService;
import com.yhy.wxzn.wcs.wcsWmsCommunication.bean.ReturnMsgDevice;
import org.jeecg.common.api.vo.Result;

import java.util.List;

/**
 * @Description: 设备信息
 * @Author: jeecg-boot
 * @Date:   2023-10-28
 * @Version: V1.0
 */
public interface IWcsDeviceInfoService extends IService<WcsDeviceInfo> {

    List<WcsDeviceInfo> findByDeviceType(Integer deviceType);

    List<WcsDeviceInfo> findAllByDeviceType(Integer deviceType);

    WcsDeviceInfo findByDeviceName(String deviceName);

    Result<?> changeDeviceStatus(String coord,String bePort);

    Result<?> controlDeviceAll(String plcNo, String dealType);

    Result<?> devicePlcInfo(String deviceId, String deviceType);


    void refreshRgvLocation(Integer rgvId, Coord coord);

    void getReturnMsgDeviceByDeviceId(List<ReturnMsgDevice> devices, Integer deviceId);

    void getReturnMsgDeviceByDeviceType(List<ReturnMsgDevice> devices, Integer deviceType);

    List<DeviceNetworkInfo> findDeviceNetworkInfoByDeviceType(Integer value);
}
